package com.aiti.lulian.mapper;

import com.aiti.base.core.base.mapper.SuperMapper;
import com.aiti.lulian.dto.ProductQueryParamDto;
import com.aiti.lulian.dto.ProductSortDto;
import com.aiti.lulian.entity.EnterpriseProductParam;
import com.aiti.lulian.dto.Product0428ParamDto;
import com.aiti.lulian.dto.Product0428ParamListDto;
import com.aiti.lulian.entity.Product0428;
import com.aiti.lulian.vo.ProductPageVo;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import com.aiti.lulian.vo.Product0428DetailVo;
import com.aiti.lulian.vo.Product0428ListVo;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface Product0428Mapper extends SuperMapper<Product0428>{

    List<ProductPageVo> productPageList(Page<ProductPageVo> page, @Param("dto") ProductQueryParamDto dto);

    Integer queryProductCountByAttrIdList(@Param("productAttrIdList") List<String> productAttrIdList, @Param("enterpriseId") String enterpriseId);

    Integer queryProductCountByAttrTypeIdList(@Param("productAttrTypeIdList") List<String> productAttrIdList, @Param("enterpriseId") String enterpriseId);

    List<String> queryProductBrand(@Param("productId")String productId);

    List<EnterpriseProductParam> queryProductParamByProductId(@Param("productId")String productId);

    List<Product0428ListVo> productList(Page page, @Param("dto") Product0428ParamListDto dto);

    List<Product0428ListVo> productListNew(Page page, @Param("dto") Product0428ParamListDto dto);

    void updateProductSort(@Param("dto") ProductSortDto dto);


}
